package com.lu.rpc.proxy.core.annotations;

import java.lang.annotation.*;

/**
 * rpc客户端
 *
 * @author: zhanglu
 * @date: 2023/7/6 17:41
 * @modify: 修改人信息, 修改内容 2023/7/6 17:41
 */
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Inherited
public @interface RpcClient {

    /**
     * 服务根地址【ip:host】
     */
    String host() default "";

    /**
     * 接口根路径
     */
    String path() default "";

    /**
     * 回滚实现类
     */
    Class<?> fallback() default void.class;

//    /**
//     * @return the <code>@Qualifiers</code> value for the feign client.
//     *
//     * If both {@link #qualifier()} and {@link #qualifiers()} are present, we will use the
//     * latter, unless the array returned by {@link #qualifiers()} is empty or only
//     * contains <code>null</code> or whitespace values, in which case we'll fall back
//     * first to {@link #qualifier()} and, if that's also not present, to the default =
//     * <code>contextId + "FeignClient"</code>.
//     */
//    String[] qualifiers() default {};
//
//    /**
//     * @return whether to mark the feign proxy as a primary bean. Defaults to true.
//     */
//    boolean primary() default true;

}
